package com.yvon.maple.service.msg.core.model.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * 发送接口的参数
 * @author 3y
 */
@Data
@Accessors(chain = true)
public class SendParam {

    /**
     * 执行业务类型
     */
    @ApiModelProperty(value = "执行业务类型(send-普通发送, recall-撤回消息)", required = true)
    @NotEmpty(message = "执行业务类型不能为空")
    private String code;

    /**
     * 消息模板Id
     */
    @ApiModelProperty(value = "消息模板Id", required = true)
    @NotEmpty(message = "消息模板Id不能为空")
    private Long messageTemplateId;


    /**
     * 消息相关的参数
     */
    @ApiModelProperty(value = "消息相关的参数", required = true)
    @NotNull(message = "消息相关的参数不能为空")
    private MessageVo messageVo;



}
